package edison.jcr.nodetype;

import javax.jcr.Value;
import javax.jcr.nodetype.ConstraintViolationException;
import javax.jcr.nodetype.PropertyDefinitionTemplate;
import edison.jcr.SessionContext;

public class PropertyDefinitionTemplateImpl extends PropertyDefinitionImpl implements PropertyDefinitionTemplate {

	PropertyDefinitionTemplateImpl(SessionContext context) {
		super(context);
	}

	public void setRequiredType(int type) {
		this.requiredType = type;

	}

	public void setValueConstraints(String[] constraints) {
		this.valueConstraints = constraints.clone();

	}

	public void setDefaultValues(Value[] defaultValues) {
		this.defaultValues = defaultValues;

	}

	public void setMultiple(boolean multiple) {
		this.isMultiple = multiple;

	}

	public void setAvailableQueryOperators(String[] operators) {
		this.availableQueryOperators = operators;

	}

	public void setFullTextSearchable(boolean fullTextSearchable) {
		this.isFullTextSearchable = fullTextSearchable;

	}

	public void setQueryOrderable(boolean queryOrderable) {
		this.isQueryOrderable = queryOrderable;

	}

	public void setName(String name) throws ConstraintViolationException {
		this.name = name;

	}

	public void setAutoCreated(boolean autoCreated) {
		this.isAutoCreated = autoCreated;

	}

	public void setMandatory(boolean mandatory) {
		this.isMandatory = mandatory;

	}

	public void setOnParentVersion(int opv) {
		this.onParentVersionAction = opv;

	}

	public void setProtected(boolean protectedStatus) {
		this.isProtected = protectedStatus;

	}

}